
import Vue from 'vue'
import { Toast } from 'vant'
import axios from 'axios'

axios.defaults.baseURL = 'https://shiyaming1994.github.io/mi/static'
axios.defaults.timeout = 3000

Vue.use(Toast)

export default function requst (url, data = {}, type = 'get') {
  let p = null
  return new Promise((resolve) => {
    if (type === 'get') {
      p = axios.get(url, {
        params: data
      })
    } else if (type === 'post') {
      p = axios.post(url, data)
    }
    p.then(res => {
      resolve(res)
    }).catch(err => {
      Toast.loading({
        message: err.message,
        forbidClick: true
      })
    })
  })
}

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
  // 在发送请求之前做些什么
  // config.headers.Authorization = sessionStorage.getItem('mytoken')
  return config
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error)
})

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  return response.data
}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error)
})
